package com.cyt.work.association.service.impl;

import com.cyt.base.model.dto.ReturnResult;
import com.cyt.base.util.BaseConstant;
import com.cyt.base.util.DateUtil;
import com.cyt.base.util.DictCode;
import com.cyt.base.util.ErrorCode;
import com.cyt.work.association.dao.WxAssociationNewDao;
import com.cyt.work.association.model.po.WxAssociationNew;
import com.cyt.work.association.model.vo.WxAssociationNewVo;
import com.cyt.work.association.service.WxAssociationNewService;
import com.cyt.sys.model.po.SysUser;
import com.cyt.sys.service.impl.BaseServiceImpl;
import com.cyt.work.association.dao.WxAssociationNewDetailDao;
import com.cyt.work.association.model.po.WxAssociationNewDetail;
import com.cyt.work.association.model.vo.WxAssociationNewDetailVo;
import com.cyt.work.association.service.WxAssociationNewDetailService;
import com.cyt.work.association.dao.WxAssociationNewStuDao;
import com.cyt.work.association.model.po.WxAssociationNewStu;
import com.cyt.work.association.model.vo.WxAssociationNewStuVo;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import tk.mybatis.mapper.entity.Example;

import javax.annotation.Resource;

import java.util.*;

import static com.cyt.base.util.BaseConstant.ASSOCIATION_NEW_END_;
import static com.cyt.base.util.BaseConstant.ASSOCIATION_NEW_PUSHLISH_;
import static com.cyt.base.util.BaseConstant.ASSOCIATION_NEW_WILL_PUSHLISH_;

/**
 * 社团招新管理-社团招新管理Service层实现类
 *
 * @author han jun
 * @date 2019-8-30 16:17:54
 */
@Service("wxAssociationNewService")
public class WxAssociationNewServiceImpl extends BaseServiceImpl<WxAssociationNew> implements WxAssociationNewService {

    @Resource
    private WxAssociationNewDao wxAssociationNewDao;

    @Resource
    private WxAssociationNewDetailDao wxAssociationNewDetailDao;

    @Resource
    private WxAssociationNewDetailService wxAssociationNewDetailService;

    @Resource
    private WxAssociationNewStuDao wxAssociationNewStuDao;



    @Autowired
    public void setBaseDao(WxAssociationNewDao wxAssociationNewDao) {
        this.baseDao = wxAssociationNewDao;
    }

    /**
     * 查询对象集合
     *
     * @param wxAssociationNewVo 对象
     * @return List 对象集合
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    public List<WxAssociationNew> listExample(WxAssociationNewVo wxAssociationNewVo) {
        Example example = new Example(WxAssociationNew.class);
        example.setOrderByClause(" create_time desc");
        Example.Criteria criteria = example.createCriteria();
        criteria.andEqualTo("removeTag", DictCode.BASE_REMOVE_TAG_NORMAL);
        criteria.andEqualTo("status",wxAssociationNewVo.getStatus());
        if (StringUtils.isNotBlank(wxAssociationNewVo.getApplyId())){
            criteria.andEqualTo("applyId", wxAssociationNewVo.getApplyId());
        }
        return wxAssociationNewDao.selectByExample(example);
    }

    @Override
    public List<WxAssociationNew> listByUserId(WxAssociationNewVo wxAssociationNewVo) {
        return wxAssociationNewDao.selectByUserId(wxAssociationNewVo);
    }

    /**
     * 分页查询
     *
     * @param wxAssociationNewVo 接受参数对象
     * @param pageNum          分页数
     * @param pageSize         每页显示条数
     * @return ReturnResult
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    public ReturnResult page(WxAssociationNewVo wxAssociationNewVo, int pageNum, int pageSize) {
        PageHelper.startPage(pageNum, pageSize);
        PageHelper.orderBy(" create_time desc");

        Example example = new Example(WxAssociationNew.class);
        Example.Criteria criteria = example.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getTitle())) {
            criteria.andLike("title", "%" + wxAssociationNewVo.getTitle() + "%");
        }
        if (StringUtils.isNotBlank(wxAssociationNewVo.getApplyId())){
            criteria.andEqualTo("applyId", wxAssociationNewVo.getApplyId());
        }
        criteria.andEqualTo("removeTag", DictCode.BASE_REMOVE_TAG_NORMAL);
        List<WxAssociationNew> list = wxAssociationNewDao.selectByExample(example);
        PageInfo<WxAssociationNew> page = new PageInfo<>(list);
        return new ReturnResult(page.getList(), page.getTotal(), page.isHasNextPage());
    }

    /**
     * 添加或更新
     *
     * @param wxAssociationNewVo 参数接受对象
     * @param sysUser      当前用户
     * @return ReturnResult
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public ReturnResult addOrUpdate(WxAssociationNewVo wxAssociationNewVo, SysUser sysUser,String associationIds) {
        wxAssociationNewVo.setBeginDate(wxAssociationNewVo.getBeginDate()+" "+"00:00:00");
        wxAssociationNewVo.setEndDate(wxAssociationNewVo.getEndDate()+" "+"23:59:59");
        if (StringUtils.isBlank(wxAssociationNewVo.getId())) {
            WxAssociationNew wxAssociationNew = new WxAssociationNew(sysUser);
            wxAssociationNew.setApplyId(wxAssociationNewVo.getApplyId());
            wxAssociationNew.setTitle(wxAssociationNewVo.getTitle());
            wxAssociationNew.setBeginDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getBeginDate()));
            wxAssociationNew.setEndDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getEndDate()));
            wxAssociationNew.setBeginTime(wxAssociationNewVo.getBeginTime());
            wxAssociationNew.setEndTime(wxAssociationNewVo.getEndTime());
            wxAssociationNew.setMaxAssoNum(wxAssociationNewVo.getMaxAssoNum());
            wxAssociationNew.setStatus(wxAssociationNewVo.getStatus());
            wxAssociationNewDao.insert(wxAssociationNew);
            //存储社团信息
            wxAssociationNewVo.setId(wxAssociationNew.getId());
            changeWxassocaiTion(associationIds, sysUser, wxAssociationNewVo);

            //更新所有用户的id
            WxAssociationNewStuVo wxAssociationNewStuVo = new WxAssociationNewStuVo();
            wxAssociationNewStuVo.setAssociationNewId("88888888");
             List<WxAssociationNewStuVo> list = wxAssociationNewStuDao.selectVoList(wxAssociationNewStuVo);

           for (WxAssociationNewStuVo wxAssociationNewStuVo1:list){
               wxAssociationNewStuVo1.setAssociationNewId(wxAssociationNew.getId());
               //更新里面的状态
               WxAssociationNewStu newwxassociationNew = wxAssociationNewStuDao.selectByPrimaryKey(wxAssociationNewStuVo1.getId());
               newwxassociationNew.setAssociationNewId(wxAssociationNew.getId());
               wxAssociationNewStuDao.updateByPrimaryKey(newwxassociationNew);
           }
            return new ReturnResult(wxAssociationNew.getId());
        } else {
            WxAssociationNew wxAssociationNew = wxAssociationNewDao.selectByPrimaryKey(wxAssociationNewVo.getId());
            wxAssociationNew.setApplyId(wxAssociationNewVo.getApplyId());
            wxAssociationNew.setTitle(wxAssociationNewVo.getTitle());
            wxAssociationNew.setBeginDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getBeginDate()));
            wxAssociationNew.setEndDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getEndDate()));
            wxAssociationNew.setBeginTime(wxAssociationNewVo.getBeginTime());
            wxAssociationNew.setEndTime(wxAssociationNewVo.getEndTime());
            wxAssociationNew.setMaxAssoNum(wxAssociationNewVo.getMaxAssoNum());
            wxAssociationNew.setStatus(wxAssociationNewVo.getStatus());
            wxAssociationNew.setUpdateTime(new Date());
            wxAssociationNew.setUpdateUser(sysUser.getId());


            WxAssociationNewDetailVo wxAssociationNewDetailVo = new WxAssociationNewDetailVo();
            wxAssociationNewDetailVo.setAssociationNewId(wxAssociationNewVo.getId());
            changeWxassocaiTion(associationIds, sysUser, wxAssociationNewVo);
            wxAssociationNewDao.updateByPrimaryKey(wxAssociationNew);

            return new ReturnResult(BaseConstant.DATABASE_SUCCEED_UPDATE);
        }
    }

    @Override
    @Transactional(rollbackFor = Exception.class)
    public ReturnResult associationSave(WxAssociationNewVo wxAssociationNewVo, SysUser sysUser){
        WxAssociationNew wxAssociationNew = wxAssociationNewDao.selectByPrimaryKey(wxAssociationNewVo.getId());
        wxAssociationNew.setApplyId(wxAssociationNewVo.getApplyId());
        wxAssociationNew.setTitle(wxAssociationNewVo.getTitle());
        wxAssociationNew.setBeginTime(wxAssociationNewVo.getBeginTime());
        wxAssociationNew.setEndTime(wxAssociationNewVo.getEndTime());
        wxAssociationNew.setBeginDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getBeginDate()+" 00:00:00"));
        wxAssociationNew.setEndDate(cn.hutool.core.date.DateUtil.parseDateTime(wxAssociationNewVo.getEndDate()+" 23:59:59"));
        wxAssociationNew.setMaxAssoNum(wxAssociationNewVo.getMaxAssoNum());
        wxAssociationNew.setStatus(wxAssociationNewVo.getStatus());
        wxAssociationNew.setUpdateTime(new Date());
        wxAssociationNew.setUpdateUser(sysUser.getId());
        wxAssociationNewDao.updateByPrimaryKey(wxAssociationNew);
        return new ReturnResult(BaseConstant.DATABASE_SUCCEED_UPDATE);
    }
    private  void changeWxassocaiTion(String associationIds ,SysUser sysUser,WxAssociationNewVo wxAssociationNewVo){
        String[] strings = associationIds.split(",");
        for (String string:strings){
            WxAssociationNewDetail wxAssociationNewDetail = new WxAssociationNewDetail(sysUser);
            wxAssociationNewDetail.setApplyId(wxAssociationNewVo.getApplyId());
            wxAssociationNewDetail.setAssociationNewId(wxAssociationNewVo.getId());
            wxAssociationNewDetail.setAssociationId(string);
            wxAssociationNewDetail.setTotalNumber("0");
            wxAssociationNewDetail.setStuNumber("0");
            wxAssociationNewDetail.setStatus(wxAssociationNewVo.getStatus());
            wxAssociationNewDetailDao.insert(wxAssociationNewDetail);
        }


    }

    @Override
    @Transactional(rollbackFor = Exception.class)
    public  ReturnResult associationNumberSet(WxAssociationNewVo wxAssociationNewVo,String number, SysUser sysUser){
        String[] strings = number.split(",");
        WxAssociationNewDetailVo wxAssociationNewDetailVo = new WxAssociationNewDetailVo();
        wxAssociationNewDetailVo.setAssociationNewId(wxAssociationNewVo.getId());
        List<WxAssociationNewDetail> detailList = wxAssociationNewDetailService.findList(wxAssociationNewDetailVo);
        for (int i =0;i<detailList.size();i++){
            WxAssociationNewDetail wxAssociationNewDetail = detailList.get(i);
            wxAssociationNewDetail.setTotalNumber(strings[i]);
            wxAssociationNewDetail.setUpdateTime(new Date());
            wxAssociationNewDetail.setUpdateUser(sysUser.getId());
            wxAssociationNewDetailDao.updateByPrimaryKey(wxAssociationNewDetail);

        }
        return new ReturnResult(BaseConstant.DATABASE_SUCCEED_UPDATE);
    }


    /**
     * 根据条件逻辑删除
     *
     * @param wxAssociationNewVo 参数接受对象
     * @param sysUser 当前用户
     * @return ReturnResult
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public ReturnResult remove(WxAssociationNewVo wxAssociationNewVo, SysUser sysUser) {
        //要修改的字段
        WxAssociationNew wxAssociationNew = new WxAssociationNew();
        wxAssociationNew.setRemoveTag(DictCode.BASE_REMOVE_TAG_DELETE);
        wxAssociationNew.setUpdateUser(sysUser.getId());
        wxAssociationNew.setUpdateTime(new Date());
        //筛选条件
        Example example = new Example(WxAssociationNew.class);
        Example.Criteria criteria = example.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteria.andIn("id", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        criteria.andEqualTo("removeTag", DictCode.BASE_REMOVE_TAG_NORMAL);
        wxAssociationNewDao.updateByExampleSelective(wxAssociationNew, example);

        //删除社团关联表
        WxAssociationNewDetail wxAssociationNewDetail = new WxAssociationNewDetail();
        wxAssociationNewDetail.setRemoveTag(DictCode.BASE_REMOVE_TAG_DELETE);
        wxAssociationNewDetail.setUpdateUser(sysUser.getId());
        wxAssociationNewDetail.setUpdateTime(new Date());
        Example exampledetail = new Example(WxAssociationNewDetail.class);
        Example.Criteria criteriadetail = exampledetail.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteriadetail.andIn("associationNewId", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        criteriadetail.andEqualTo("removeTag", DictCode.BASE_REMOVE_TAG_NORMAL);
        wxAssociationNewDetailDao.updateByExampleSelective(wxAssociationNewDetail, exampledetail);



        //删除人员关联表
        WxAssociationNewStu wxAssociationNewStu = new WxAssociationNewStu();
        wxAssociationNewStu.setRemoveTag(DictCode.BASE_REMOVE_TAG_DELETE);
        wxAssociationNewStu.setUpdateUser(sysUser.getId());
        wxAssociationNewStu.setUpdateTime(new Date());
        Example examplestu = new Example(WxAssociationNewStu.class);
        Example.Criteria criteriastu = examplestu.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteriastu.andIn("associationNewId", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        criteriastu.andEqualTo("removeTag", DictCode.BASE_REMOVE_TAG_NORMAL);
        wxAssociationNewStuDao.updateByExampleSelective(wxAssociationNewStu,examplestu);
        return new ReturnResult(ErrorCode.CODE_0, BaseConstant.DATABASE_SUCCEED_DEL);
    }

    /**
     * 根据条件物理删除
     *
     * @param wxAssociationNewVo 参数接受对象
     * @param sysUser      当前用户
     * @return ReturnResult
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public ReturnResult delete(WxAssociationNewVo wxAssociationNewVo, SysUser sysUser) {
        //筛选条件
        Example example = new Example(WxAssociationNew.class);
        Example.Criteria criteria = example.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteria.andIn("id", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        wxAssociationNewDao.deleteByExample(example);
        return new ReturnResult(ErrorCode.CODE_0, BaseConstant.DATABASE_SUCCEED_DEL);
    }


    /**
     * 结束社团招新
     *
     * @param wxAssociationNewVo 参数接受对象
     * @param sysUser      当前用户
     * @return ReturnResult
     * @author han jun
     * @date 2019-8-30 16:17:54
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public ReturnResult endAssociation(WxAssociationNewVo wxAssociationNewVo, SysUser sysUser){
        WxAssociationNew wxAssociationNew = wxAssociationNewDao.selectByPrimaryKey(wxAssociationNewVo.getId());
        wxAssociationNew.setStatus("2");
        wxAssociationNew.setUpdateTime(new Date());
        wxAssociationNew.setUpdateUser(sysUser.getId());
        wxAssociationNewDao.updateByPrimaryKey(wxAssociationNew);

        //关联表里面数据处理
        WxAssociationNewDetail wxAssociationNewDetail = new WxAssociationNewDetail();
        wxAssociationNewDetail.setStatus(ASSOCIATION_NEW_END_);
        wxAssociationNewDetail.setUpdateUser(sysUser.getId());
        wxAssociationNewDetail.setUpdateTime(new Date());
        Example exampledetail = new Example(WxAssociationNewDetail.class);
        Example.Criteria criteriadetail = exampledetail.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteriadetail.andIn("associationNewId", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        criteriadetail.orEqualTo("status", ASSOCIATION_NEW_WILL_PUSHLISH_);
        criteriadetail.orEqualTo("status", ASSOCIATION_NEW_PUSHLISH_);
        wxAssociationNewDetailDao.updateByExampleSelective(wxAssociationNewDetail, exampledetail);


        //人员关联表
        WxAssociationNewStu wxAssociationNewStu = new WxAssociationNewStu();
        wxAssociationNewStu.setStatus(ASSOCIATION_NEW_END_);
        wxAssociationNewStu.setUpdateUser(sysUser.getId());
        wxAssociationNewStu.setUpdateTime(new Date());
        Example examplestu = new Example(WxAssociationNewStu.class);
        Example.Criteria criteriastu = examplestu.createCriteria();
        if (StringUtils.isNotBlank(wxAssociationNewVo.getId())) {
            criteriastu.andIn("associationNewId", Arrays.asList(wxAssociationNewVo.getId().split(",")));
        }
        criteriastu.orEqualTo("status", ASSOCIATION_NEW_WILL_PUSHLISH_);
        criteriastu.orEqualTo("status", ASSOCIATION_NEW_PUSHLISH_);
        wxAssociationNewStuDao.updateByExampleSelective(wxAssociationNewStu,examplestu);

        return new ReturnResult(ErrorCode.CODE_0, BaseConstant.DATABASE_SUCCEED_DEL);

    }
    /**
     * 关闭当天结束的，开启第二天开始的
     * @author han jun
     * @date 2019/9/2 15:10
     */
    @Override
     public void updateStatusByTime(){
        {
            WxAssociationNewVo wxAssociationNewVo=new WxAssociationNewVo();
            wxAssociationNewVo.setStatus("0");
            List<WxAssociationNew> AssociationNewList=listExample(wxAssociationNewVo);
            for(WxAssociationNew a:AssociationNewList){
                Date date=new Date();
                boolean s= com.cyt.base.util.DateUtil.isSmallerThan(a.getBeginDate(),date);
                boolean b= com.cyt.base.util.DateUtil.isSmallerThan(a.getEndDate(),date);
                if(s!=false&&b!=true){
                    Date beginTime=  com.cyt.base.util.DateUtil.toDate(a.getBeginTime(),"HH:mm:ss");
                    Date endTime = com.cyt.base.util.DateUtil.toDate(a.getEndTime(),"HH:mm:ss");
                    Calendar calendar = Calendar.getInstance();
                    calendar.setTime(beginTime);
                    int beginStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    calendar.setTime(endTime);
                    int endStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    calendar.setTime(date);
                    int dateStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    if(beginStr<=dateStr&&endStr>=dateStr){
                        a.setStatus("1");
                        wxAssociationNewDao.updateByPrimaryKey(a);
                    }
                }
            }

        }


        {
            WxAssociationNewVo wxAssociationNewVo=new WxAssociationNewVo();
            wxAssociationNewVo.setStatus("1");
            List<WxAssociationNew> AssociationNewList=listExample(wxAssociationNewVo);
            for(WxAssociationNew a:AssociationNewList){
                Date date=new Date();
                boolean s= com.cyt.base.util.DateUtil.isSmallerThan(a.getBeginDate(),date);
                boolean b=com.cyt.base.util.DateUtil.isSmallerThan(a.getEndDate(),date);
                if(s!=false&&b!=true){
                    Date beginTime=  com.cyt.base.util.DateUtil.toDate(a.getBeginTime(),"HH:mm:ss");
                    Date endTime = com.cyt.base.util.DateUtil.toDate(a.getEndTime(),"HH:mm:ss");
                    Calendar calendar = Calendar.getInstance();
                    calendar.setTime(beginTime);
                    int beginStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    calendar.setTime(endTime);
                    int endStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    calendar.setTime(date);
                    int dateStr=calendar.get(Calendar.HOUR_OF_DAY)*3600+calendar.get(Calendar.MINUTE)*60+calendar.get(Calendar.SECOND);
                    if(beginStr>dateStr||endStr<dateStr){
                        a.setStatus("0");
                        wxAssociationNewDao.updateByPrimaryKey(a);
                    }
                }
            }
        }

        {
            WxAssociationNewVo wxAssociationNewVo=new WxAssociationNewVo();
            wxAssociationNewVo.setStatus("1");
            List<WxAssociationNew> AssociationNewList=listExample(wxAssociationNewVo);
            for(WxAssociationNew a:AssociationNewList) {
                Date dateEndDate=a.getEndDate();
                Date endTime = com.cyt.base.util.DateUtil.toDate(a.getEndTime(), "HH:mm:ss");
                Calendar calendar = Calendar.getInstance();
                Calendar calendarDate = Calendar.getInstance();
                calendar.setTime(endTime);
                calendarDate.setTime(dateEndDate);
                calendar.set(Calendar.YEAR,calendarDate.get(Calendar.YEAR));
                calendar.set(Calendar.MONTH,calendarDate.get(Calendar.MONTH));
                calendar.set(Calendar.DATE,calendarDate.get(Calendar.DATE));
                Date date=new Date();
                Date dateEnd=calendar.getTime();
                boolean b=com.cyt.base.util.DateUtil.isSmallerThan(dateEnd,date);
                if(b!=false){
                    a.setStatus("2");
                    wxAssociationNewDao.updateByPrimaryKey(a);
                }

            }
        }

        }


    /**
     * 获取招新统计数据
     *
     * @param id 招新的id
     * @return Map
     * @author Jun Han
     * @date 2019/9/26 10:39
     */
    @Override
    public Map<String, String> associationNewStatis(String id){
        Map<String, String> newStatisMap = new HashMap<>();
        //获取招新信息
        WxAssociationNew associationNew = wxAssociationNewDao.selectByPrimaryKey(id);
        newStatisMap.put("title", associationNew.getTitle());
        newStatisMap.put("status", associationNew.getStatus());
        newStatisMap.put("beginDate", DateUtil.getDateText(associationNew.getBeginDate(),"yyyy-MM-dd"));
        newStatisMap.put("endDate", DateUtil.getDateText(associationNew.getEndDate(),"yyyy-MM-dd"));
        newStatisMap.put("beginTime", associationNew.getBeginTime());
        newStatisMap.put("endTime", associationNew.getEndTime());
        //统计数量
        WxAssociationNewDetailVo wxAssociationNewDetailVo = new WxAssociationNewDetailVo();
        wxAssociationNewDetailVo.setAssociationNewId(id);
        List<WxAssociationNewDetailVo> list =wxAssociationNewDetailService.findVoList(wxAssociationNewDetailVo);
        int a =0;
        int b =0;
        for (WxAssociationNewDetailVo wxAssociationNewDetailVo1:list){
            a = a+Integer.parseInt(wxAssociationNewDetailVo1.getTotalNumber());
            b= b+Integer.parseInt(wxAssociationNewDetailVo1.getStuNumber());
        }
        newStatisMap.put("stuNumber", String.valueOf(b));
        newStatisMap.put("totalNumber",String.valueOf(a));

        return newStatisMap;

    }



    }

